<?php
session_start();

// 初始化对话历史数组
if (!isset($_SESSION['dialogue_history'])) {
    $_SESSION['dialogue_history'] = [];
}

// 处理用户输入
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $input = $_POST['input'];

    // 检查是否退出
    if ($input === '退出') {
        session_destroy();
        header("Location: {$_SERVER['PHP_SELF']}");
        exit;
    }

    // 根据用户输入给出回复
    $response = getResponse($input);

    // 保存对话历史
    $_SESSION['dialogue_history'][] = ["你: $input", "系统: $response"];
}

// 根据输入生成回复的函数
function getResponse($input) {
    // 简单示例，根据不同输入返回不同回复
    switch (strtolower($input)) {
        case '你好':
            return '你好呀！有什么我可以帮忙的？';
        case '今天天气怎么样':
            return '我不太清楚呢，你可以查看天气预报哦。';
        default:
            return '我不太理解你说的话，可以换一种表达方式吗？';
    }
}
?>

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Web 对话系统</title>
</head>

<body>
    <h1>Web 对话系统</h1>
    <h2>对话历史</h2>
    <ul>
        <?php
        foreach ($_SESSION['dialogue_history'] as $pair) {
            echo "<li>{$pair[0]}</li>";
            echo "<li>{$pair[1]}</li>";
        }
        ?>
    </ul>
    <form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>">
        <label for="input">你: </label>
        <input type="text" id="input" name="input" required>
        <input type="submit" value="发送">
    </form>
    <p>输入 '退出' 结束对话。</p>
</body>

</html>